package main

import (
	"log"
	"net/http"

	"gopkg.in/macaron.v1"
)

func main() {
	m := macaron.Classic()
	m.Get("/", myHandler)       // 注册路由时，注意函数名后面没有括号，因为我们当时没有调用它
	m.Get("/*", myHandler)      // 匹配/下的所有路径，如：http://localhost:4000/user/apo
	m.Get("/hello", myHandler1) // 处理/hello请求

	m.Get("/200", func(resp http.ResponseWriter, req *http.Request) {
		// resp and req are injected by Macaron
		resp.WriteHeader(200) // HTTP 200
	})

	log.Println("server is running ...")
	// 通过标准库接口启动实例
	log.Println(http.ListenAndServe("0.0.0.0:4000", m)) // 指定访问端口，可以修改为其他端口
}

// 任何macaron实例都能获取到macaron.Context服务
func myHandler(ctx *macaron.Context) string {
	return "The request path is: " + ctx.Req.RequestURI // 获取请求路径
}
func myHandler1(ctx *macaron.Context) string {
	return "hello world."
}
